$(function () {
    //表单验证
    $("form").validation({
        "gname": {
            rule: {
                required: true
            }
        }
    });

    //不能选择封面栏目
    $("form").submit(function () {
        if ($("[name=cid]  option:selected").attr("class") == 'feng') {
            alert("商品栏目不能为封面栏目");
            return false;
        }
        if ($("[name=cid]  option:selected").val() == 0) {
            alert("请选择栏目");
            return false;
        }
    })

    //选择栏目后获得商品属性与规格列表
    $('.category').change(function(){ 
        // $('#stock').empty();
        var obj = $("option:selected");
        getAttr(obj);
        getSpec(obj);
    })

    //点选商品规格样式获取 详细添加表；
    $("#specBox li input").live("click", function () {
        var stat = true;
        $('#specBox li').each(function (i){
           if($("input:checked",this).length==0){
                stat = false;
                return;
           }
        })
        if (!stat)return;
        var spec_id = [];
        $("#specBox li input:checked").each(function (i) {
            var spec_type_id = $(this).attr("spec_type_id");
            if (!spec_id[spec_type_id]){
                spec_id[spec_type_id] = [];
            }   
                spec_id[spec_type_id].push($(this).attr("spec_id"));                          
        }) 
        getStockForm(descarte(spec_id));
    })
    
})

    /**
     * 获取商品属性
     * @param  {[type]} obj [description]
     * @return {[type]}     [description]
     */
function getAttr(obj,gid) {
    //判断栏目分类
    $("#attrBox").empty();
    var option = obj;
    if (option.val() == 0)return;
    if (option.attr("class") == "feng") {
        alert("商品栏目不能为封面栏目");
        return false;
    }

    //ajax发送获取商品属性       
    $.post(CONTROL + "&m=getAttr", {cid: $(obj).val(), gid: gid}, function (data) {
        var attr = data.attr;
        if(attr){
           //属性值
            var html = "<h3 class='hd'>商品属性</h3>";
                html +='<ul>';
                $(attr).each(function (i){
                    html +='<li><span class="na">'+attr[i].attr_name+'</span>';
                    //商品属性名称 aid
                    html +="<input name='aid[]' value='"+attr[i].aid+"' type='hidden' />";

                    //如果为可选属性
                    if(attr[i].attr_type==1){
                        html +='<span class="cnt"><select name="value[]">';
                        var attr_value = attr[i].value.split('\n');
                        $(attr_value).each(function (k){
                            //商品属性值 value
                            html +='<option value='+attr_value[k]+'>'+attr_value[k]+'</option>'
                        });
                        html +='</select></span>';
                    }
                    //如果为单一属性
                    if(attr[i].attr_type==0){
                        html +="<span>"+attr[i].value+"<input type='text' name='value[]' /></span>"
                    }
                    html +='</li>';           
                })                            
                html +='</ul>';
            $("#attrBox").append(html);   
        }        
    }, "json");
}

    /**
     * 获取商品规格
     * @return {[type]} [description]
     */
function getSpec(obj,gid) {    
    $.post(CONTROL + "&m=getSpec", {cid: $(obj).val(), gid: gid}, function (data) {
         var spec = data.spec;
         if(spec){
            $("#specBox").empty();
            var html = "<h3 class='hd'>商品规格</h3>";
                html +='<ul>';
                $(spec).each(function (i){
                    html +='<li><label class="na">'+spec[i][0]+'</label>';
                    $(spec[i][1]).each(function (k){
                        var spec_id = spec[i][1][k]['spec_id'];
                        var spec_type_id = spec[i][1][k]['spec_type_id'];
                        html +='<label><input type="checkbox" class="Nobd" spec_type_id="' + spec_type_id + '" spec_id="' + spec_id + '"/>';
                        html += '<span class=specValue_'+spec[i][1][k]['spec_id']+'>'+spec[i][1][k]['value']+'</span></label>';
                    })
                    html +='</li>';
                })
                html +='</ul>';
            $("#specBox").append(html);
         }        
    }, "json");
}

    /**
     * 获得库存表单name名
     * @param  {[type]} arr [description]
     * @return {[type]}     [description]
     */
function getSpecFieldName(arr) {
    var name = "st_";
    for (var i = 0; i < arr.length; i++) {
        name += arr[i];
    }
    return name;
}

    /**
     * 计算商品
     * @return {[type]} [description]
     */
function getStockForm(specId){
    $("#stock").empty();
    if ($(".spec_field").length == 0) {
        var spec_div = "";
        spec_div += "<div class='spec_field'>";
        spec_div += "<dl><dt>库存</dt><dd></dd></dl>";
        spec_div += "</div>";
        $("#stock").append(spec_div);
    }

    if(specId){
        var html = "<table class='table2 bod'>";
            html += "<thead><tr>";
        $('#specBox .na').each(function (i){
            var cur = $(this).html();
            html +="<td>"+cur+"</td>";
        })
            html +="<td>价格</td><td>货号</td><td>库存</td>";
            html += "</tr></thead>";
        var n= specId.length;
        var price_value = $("[name=price]").val();
        for (var i = 0; i < specId.length; i++) {
            html +="<tr>";    
            for (var n = 0; n < specId[i].length; n++) {
                var name = getSpecFieldName(specId[i]);
                var spec_id = specId[i][n];
                var spec_value = $("#specBox .specValue_" + spec_id).text();
                html +="";
                //规格id
                html +="<td>";
                html += "<input type='hidden' name='spec[" + name + "][goods_spec][" + spec_id + "][spec_id]' spec='" + name + "_" + spec_id + "' value='" + spec_id + "' />";
                //规格值
                html += "<input type='hidden' name='spec[" + name + "][goods_spec][" + spec_id + "][spec_value]' spec='" + name + "_" + spec_id + "' value='" + spec_value + "' />";
                html +=spec_value+"</td>";
            }
            html +="<td><input type='text' st='" + name + "_price' name='spec[" + name + "][price]' value='" + price_value + "'/></td>";//价格
            html += "<td><input type='text' sp='" + name + "_stock' name='spec[" + name + "][stock]'/></td>";//库存
            html += "<td><input type='text' sp='" + name + "_goods_sn' name='spec[" + name + "][goods_sn]'/></td>";//货号
            html +="</tr>"; 
        }
    }
    html +="</table>";
    $("#stock .spec_field dd").append(html);
}






//添加内容页图片上传表单
function addImg(obj) {
    var _tr = '<tr>' +
        '<td width="20">' +
        '<a href="javascript:" onclick="delImg(this);">[-]</a>' +
        '</td>' +
        '<td width="320">' +
        '图片描述 <input type="test" name="pic[alt][]" class="w200"/>' +
        '</td>' +
        '<td>' +
        '<input type="file" name="pic[file][]"/>' +
        '</td>' +
        '</tr>';
    $(obj).parents("table").eq(0).append(_tr);
}
//添加内容页图片上传表单
function delImg(obj) {
    $(obj).parents("tr").eq(0).remove();
}


/**
 * 日历调用
 * @return {[type]} [description]
 */
$(function () {
    // 日期中文字符
    var dateFormat = {
    dateFormat: "yy-mm-dd"
    ,monthNames: [ " 一月 ", " 二月 ", " 三月 ", " 四月 ", " 五月 ", " 六月 ", " 七月 ",
    " 八月 ", " 九月 ", " 十月 ", " 十一月 ", " 十二月 " ]
    ,dayNamesMin: [ " 日 ", " 一 ", " 二 ", " 三 ", " 四 ", " 五 ", " 六 " ]
     };

    // 为 ID 为 begin_time 的 input 设置日历
    $("#begin_time").datepicker(dateFormat);
             
});   

























